Off-spinner JP Duminy delivered the finals blows, taking the last two wickets. England began the day on 48 for three, still trailing by 195 runs, but the fire and intensity of Morkel and Steyn's bowling meant there was no respite for their batsmen. It was left-arm paceman Parnell, playing in his first test, who made the initial breakthrough as Kevin Pietersen, who scored just three runs on Sunday to go to 12, chased after a delivery angled across him and edged a catch to wicketkeeper Mark Boucher.
Morkel was then able to make serious inroads in his second spell of the day, Ian Bell (5), Matt Prior (0) and Stuart Broad (1) all being caught behind the wicket off deliveries that reared up nastily off the pitch.
Graeme Swann swung lustily in scoring 20 before an excellent away-swinger from Steyn had him caught at third slip.
Paul Collingwood was the one England batsman to prosper, making a defiant, counter-attacking 71 before he pulled a long-hop from off-spinner Duminy straight to deep backward square-leg.
Duminy then completed the victory when he bowled Ryan Sidebottom for 15.
Morkel ended with figures of four for 59 in 16 overs, and was seven for 98 in the match.
SCOREBOARD:
-- England first innings 180:
-- South Africa first innings 423/7:
=========================================
England second innings:
=========================================
A. Strauss lbw b Parnell 22
A. Cook c Smith b Morkel 1
J. Trott c De Villiers b Steyn 8
K. Pietersen c Boucher b Parnell 12
P. Collingwood c Morkel b Duminy 71
I. Bell c Kallis b Morkel 5
M. Prior c Smith b Morkel 0
S. Broad c Boucher b Morkel 1
G. Swann c De Villiers b Steyn 20
R. Sidebottom b Duminy 15
J. Anderson not out 1
Extras: (lb-6, w-1 nb-6) 13
-----------------------------------------
Total: (all out, 42.5 overs) 169
=========================================
Fall of wickets: 1-6 2-21 3-48 4-84 5-103 6-103 7-104 8-134 9-154 10-169
Bowling: Steyn 14-1-64-2 (nb-2), Morkel 16-5-59-4 (w-1, nb-3), Parnell 8-1-17-2, McLaren 3-1-13-0 (nb-1), Duminy 1.5-0-10-2
RESULT: Series ended 1-1.